package com.gopay.checkorder.dao;

import java.util.Date;
import java.util.List;

import com.gopay.common.base.dao.BaseReadDAO;
import com.gopay.common.base.dao.impl.BaseReadDAOImpl;
import com.gopay.common.domain.bank.BankOrder;

/**
 * @BisBankOrderQueryDAO.java
 * @author fanghw
 * @2015年9月28日 下午5:11:08  www.gopay.com.cn Inc.All rights reserved.
 */
public interface BisBankOrderQueryDAO extends BaseReadDAO<BankOrder, String> {

    public int getCheckOrderCount(String orderStatus);
    
    public List<BankOrder> getCheckOrder(String orderStatus, int pageIndex, int pageSize);
    
    public int getCheckOrderCount(String orderStatus, int count);
    
    public List<BankOrder> getCheckOrder(String orderStatus, int count, int pageIndex, int pageSize);
    
    public int getCheckOrderCountByBank(String orderStatus, int count,String bankCode);
    
    public List<BankOrder> getCheckOrderByBank(String orderStatus, int count, int pageIndex, int pageSize,String bankCode);
    
    public List<BankOrder> getCheckOrderByBankProd(String orderStatus, int count, int pageIndex, int pageSize,String bankProd);
    
    public List<BankOrder> getCheckOrderViewByBankProd(String orderStatus, int count, int pageIndex, int pageSize,String bankProd);
    
    public List<BankOrder> getCheckOrderByBankExcludeB2b(String orderStatus, int count, int pageIndex, int pageSize,String bankCode);
    
    public int getCheckOrderCountByBank(String orderStatus,String bankCode);
    
    public List<BankOrder> getCheckOrderByBank(String orderStatus, int pageIndex, int pageSize,String bankCode);
    
    public int getCheckOrderCount(Date date);
    
    public List<BankOrder> getCheckOrder(Date date, int pageIndex, int pageSize);
    
    public int getCheckOrderCountByBank(Date date,String bankCode);
    
    public int getCheckOrderCountByBankExcludeB2b(Date date,String bankCode);
    
    public List<BankOrder> getCheckOrderByBank(Date date, int pageIndex, int pageSize,String bankCode);
    
    public List<BankOrder> getCheckOrderByBankExcludeB2b(Date date, int pageIndex, int pageSize,String bankCode);
    
    public int getCheckBcdlOrderCountByBank(String bank,String orderStatus);
    
    public int getCheckBcdlOrderCountByBankLarge(String bank,String orderStatus);
    
    public List<BankOrder> getCheckBcdlOrderByBank(String bank,String orderStatus, int pageIndex, int pageSize);
    
    public List<BankOrder>  getCheckBcdlOrderByBanklarge(String bank,String orderStatus, int pageIndex, int pageSize);

	public List<BankOrder> getCheckOrderByBankPab(String orderStatus, int totalCheckTimes, int pageIndex, int pageSize);
        
	public int getCheckBcdlOrderCountByChannel(String channel,String orderStatus);
    
    public List<BankOrder>  getCheckBcdlOrderByChannel(String channel,String orderStatus, int pageIndex, int pageSize);
}
